from time import sleep
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
# 1.打开浏览器
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.wait import WebDriverWait

driver = webdriver.Chrome(executable_path='chromedriver.exe')


# 2.输入访问地址（URL）
driver.get("http://121.43.169.97:8848/pageA.html")
# 放大浏览e器页面
driver.maximize_window()
"""
步骤
1. 导包 Select类 --> from selenium.webdriver.support.select import Select
2. 实例化Select类 select = Select(driver.find_element_by_id("selectA"))
匿名：Select(element).select_by_index() 下标/索引
 实名：select = Select(element)
      select.select_by_index()
 3. 调用方法：select.select_by_index(index)
 注意：
    1.Select类是通过select标签来控制其下的option元素
    2.element.select_by_index()

"""
# ----------------------下标/索引----------------------
# 方法1：
# 需求：使用‘注册A.html’页面，完成对城市的下拉框的操作
# # 1).选择‘广州’
# el = driver.find_element_by_css_selector("#selectA")
# select = Select(el)
# sleep(2)
# select.select_by_index(2)
# # 2).暂停2秒，选择‘上海’
# select.select_by_index(1)
# sleep(2)
# # 3).暂停2秒，选择‘北京’
# select.select_by_index(0)

# # ----------------------value值实现----------------------
# # 方法2
# # 1).选择‘广州’
# el = driver.find_element_by_css_selector("#selectA")
# select = Select(el)
# sleep(2)
# select.select_by_value("gz")
# # 2).暂停2秒，选择‘上海’
#
# sleep(2)
# select.select_by_value("sh")
# # 3).暂停2秒，选择‘北京’
# sleep(2)
# select.select_by_value("bj")


# ----------------------文本值显示内容----------------------
# 方法3

el = driver.find_element_by_css_selector("#selectA")
select = Select(el)
sleep(2)
# 1).选择‘广州’
select.select_by_visible_text("广州")
# 2).暂停2秒，选择‘上海’
sleep(2)
select.select_by_visible_text("上海")
# 3).暂停2秒，选择‘北京’
sleep(2)
select.select_by_visible_text("北京")

sleep(3)
driver.quit()